package com.meeting.model.dto.bookingorder;

import jakarta.validation.constraints.Future;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 会议室预订需求请求
 */
@Data
public class BookingRequirementRequest implements Serializable {
    /**
     * 预订开始时间
     */
    @NotNull(message = "开始时间不能为空")
    @Future(message = "开始时间必须是未来时间")
    private Date startTime;

    /**
     * 预订结束时间
     */
    @NotNull(message = "结束时间不能为空")
    @Future(message = "结束时间必须是未来时间")
    private Date endTime;

    /**
     * 参会人数
     */
    private Integer attendees;

    /**
     * 需要的设备ID列表
     */
    private List<Integer> deviceIds;
    
    /**
     * 会议室类型 0-教室型 1-圆桌型
     */
    private Integer roomType;
    
    /**
     * 最高价格（每小时）
     */
    private Double maxPrice;

    private static final long serialVersionUID = 1L;
}